FIG. 1 depicts a generalized computing device (“computing device”) 10. The computing device 10 includes at least a CPU 12 and an optional mass storage 18, such as a hard disk. The computing device 10 may also include other features. The computing device depicted in FIG. 1 also includes a memory 14 such as a flash memory, a display 16, an input/output device 20 such as a keyboard, BIOS 22, a network interface 24 and a bus interface 26. Communication to a network (not shown) is carried out through the network interface 24. Similarly, communication to any attached devices (not shown) can be carried out via the bus interface 26. For example, the bus interface 26 could include interfaces for PCI Express, SATA, Ethernet, Infiniband or other serial bus connectors.
The computing device 10 is capable of performing a variety of functions. It is often desirable to utilize the computing device 10 as a server. A server would include additional hardware and/or software that allows the server to serve multiple users. Thus, the server would allow multiple users to share resources, such as printers or the optional mass storage 18 of the computing device 10.
There are a number of conventional methods for allowing the computing device 10 to be used as a server. In general, these conventional methods involve obtaining server software and installing the software on the computing device 10. The user must then manually set up the desired functions for the server. Alternatively, the computing device 10 could be specially built to function as a server. In either case, ensuring that the computing device 10 can function as a server is expensive. For example, obtaining and installing server software on the computing device 10 or specially building the computing device 10 may cost between $500 and $5,000. Moreover, installing the software and tailoring the system to provide the desired individual functions requires a substantial investment of time on the part of the user.
Purpose of Invention
As Universal Serial Bus (USB) becomes a standard communication interface on the PC and digital imaging device, USB-based flash storage system starts proliferating the consumer market. A traditional USB-based flash storage system tends to include an USB Local Control Program, one or more flash memory chips in addition to the USB connector. USB flash storage becomes one of the most popular choices for external removable storage due to its simplicity, high performance and reliability.
If the PC or computing device has the capability in its BIOS to boot from a USB flash storage, it opens up a possibility to incorporate server functionality into a USB flash storage. The server is thus modular and very portable. The actual storage drives on a server are no longer needed to reside on the same physical space with the server itself. It is able to decouple the server from the storage drives completely. The server or storage drives can each evolve or upgrade independent to each other. Being able to easily hot swap the USB flash storage from the PC or computing device, it brings great benefits in service and support to the server itself.
Accordingly, what is needed is a system and method for cheaply and easily allowing the computing device to be used as a server. The present invention addresses such a need.